home *** CD-ROM | disk | FTP | other *** search
/ Dr. Windows 3 / dr win3.zip / dr win3 / WINWORDS / WINE02BX.ZIP / LISP / MODES / TEXNFO-U.ELC < prev    next >
Text File  |  1993-03-28  |  31KB  |  378 lines

  1. ;;; compiled by @win386 on Sat Mar 13 14:33:43 1993
  2. ;;; from file c:/src/lucid-19.4/lisp/modes/texnfo-u.el
  3. ;;; emacs version 19.3 Lucid.
  4. ;;; bytecomp version 2.08; 27-aug-92.
  5. ;;; optimization is on.
  6. ;;; this file uses opcodes which do not exist in Emacs18.
  7.  
  8. (if (and (boundp 'emacs-version)
  9.      (or (and (boundp 'epoch::version) epoch::version)
  10.          (string-lessp emacs-version "19")))
  11.     (error "This file was compiled for Emacs19."))
  12.  
  13. (provide 'texnfo-upd)
  14. (fset 'texinfo-make-menu #[(&optional region-p) "¼î┴ ├\n!ê─┼!)ç─╞!ê╟ ╚ ╟ bê┴         U½ä╩╦!êèî~ê╠\n\"½ë┴ ├\n!ê¬p`W½Ü═\n\"½ô┴ ╠\n\"½i┴ ├\n!ê¬p-─╬!ç" [region-p texinfo-hierarchic-level level texinfo-make-one-menu message "Done...updated the menu.  You may save the buffer." "Making or updating menus... " region-beginning region-end beginning error "Please mark a region!" texinfo-find-lower-level-node texinfo-find-higher-level-node "Done...updated menus.  You may save the buffer."] 3 "\
  15. Without any prefix argument, make or update a menu.
  16. Make the menu for the section enclosing the node found following point.
  17.  
  18. Non-nil argument (prefix, if interactive) means make or update menus
  19. for nodes within or part of the marked region.
  20.  
  21. Whenever a menu exists, and is being updated, the descriptions that
  22. are associated with node names in the pre-existing menu are
  23. incorporated into the new menu.  Otherwise, the nodes' section titles
  24. are inserted as descriptions." "P"])
  25. (fset 'texinfo-make-one-menu #[(level) "└┬ !┼ !╟ \" bê╔ \n╦  # ═ \"½ï╬ !ê╧ \"ê╨ \n\".ç" [t case-fold-search texinfo-update-menu-region-beginning level beginning texinfo-update-menu-region-end end texinfo-menu-first-node first texinfo-copy-node-name node-name texinfo-make-menu-list new-menu-list texinfo-old-menu-p texinfo-incorporate-descriptions texinfo-delete-old-menu texinfo-insert-menu] 4 "\
  26. Make a menu of all the appropriate nodes in this section.
  27. `Appropriate nodes' are those associated with sections that are 
  28. at the level specified by LEVEL.  Point is left at the end of menu."])
  29. (fset 'texinfo-all-menus-update #[(&optional update-all-nodes-p) "è└ ê┴┬!êè├ ┼╞#½ä╟╚!ê)    ½Å┴╩!ê╦╠!ê└ ê═╞!ê┴╬!ê╦╠!ê╧╞!ê┴╨!)ç" [mark-whole-buffer message "Checking for a master menu... " re-search-forward texinfo-master-menu-header nil t error "Please remove existing master menu, lest it be partly duplicated!" update-all-nodes-p "First updating all nodes... " sleep-for 2 texinfo-update-node "Updating all menus... " texinfo-make-menu "Done...updated all the menus.  You may save the buffer."] 4 "\
  30. Update every regular menu in a Texinfo file.
  31. You must remove the detailed part of a pre-existing master menu before
  32. running this command, lest it be partly duplicated.
  33.  
  34. If called with a non-nil argument, this function first updates all the
  35. nodes in the buffer before updating the menus." "P"])
  36. (fset 'texinfo-find-lower-level-node #[(level region-end) "`W¡ÿ┴┬├─┼\"A!Q╚!╔#¡â╩öbç" [region-end re-search-forward "\\(^@node\\).*\n" "\\(\\(^@c\\).*\n\\)?" eval assoc level texinfo-update-menu-lower-regexps texinfo-update-menu-region-end t 1] 7 "\
  37. Search forward from point for node at any level lower than LEVEL.
  38. Search is limited to the end of the marked region, REGION-END, 
  39. and to the end of the menu region for the level.
  40.  
  41. Return t if the node is found, else nil.  Leave point at the beginning
  42. of the node if one is found; else do not move point."])
  43. (fset 'texinfo-find-higher-level-node #[(level region-end) "`W¡ò┴┬├─┼\"A!Q╚╔#¡â╩öbç" [region-end re-search-forward "\\(^@node\\).*\n" "\\(\\(^@c\\).*\n\\)?" eval assoc level texinfo-update-menu-higher-regexps nil t 1] 7 "\
  44. Search forward from point for node at any higher level than argument LEVEL.
  45. Search is limited to the end of the marked region, REGION-END.
  46.  
  47. Return t if the node is found, else nil.  Leave point at the beginning
  48. of the node if one is found; else do not move point."])
  49. (fset 'texinfo-make-menu-list #[(beginning end level) "bê┴├ \"½è╞ ╟ B\nB¬p╚\n!)ç" [beginning nil new-menu-list texinfo-menu-locate-entry-p level end texinfo-copy-node-name texinfo-copy-section-title reverse] 3 "\
  50. Make a list of node names and their descriptions.
  51. Point is left at the end of the menu region, but the menu is not inserted.
  52.  
  53. First argument is position from which to start making menu list; 
  54. second argument is end of region in which to try to locate entries;
  55. third argument is the level of the nodes that are the entries.
  56.  
  57. Node names and descriptions are dotted pairs of strings.  Each pair is
  58. an element of the list.  If the description does not exist, the
  59. element consists only of the node name."])
  60. (fset 'texinfo-menu-locate-entry-p #[(level search-end) "└┴┬├─\"A!Q╚#¡â╔öbç" [re-search-forward "\\(^@node\\).*\n" "\\(\\(^@c\\).*\n\\)?" eval assoc level texinfo-update-menu-same-level-regexps search-end t 1] 7 "\
  61. Find a node that will be part of menu for this section.
  62. First argument is a string such as \"section\" specifying the general
  63. hierarchical level of the menu; second argument is a postion
  64. specifying the end of the search.
  65.  
  66. The function returns t if the node is found, else nil.  It searches
  67. forward from point, and leaves point at the beginning of the node.
  68.  
  69. The function finds entries of the same type.  Thus `subsections' and
  70. `unnumberedsubsecs' will appear in the same menu."])
  71. (fset 'texinfo-copy-node-name #[nil "è└vê┴┬wê`├─è┬ê`)┼#½ä`S¬ä┬ê`{)ç" [1 "     " nil search-forward "," t] 5 "\
  72. Return the node name as a string.
  73.  
  74. Start with point at the beginning of the node line; copy the text
  75. after the node command up to the first comma on the line, if any, and
  76. return the text as a string.  Leaves point at the beginning of the
  77. line.  If there is no node name, returns an empty string."])
  78. (fset 'texinfo-copy-section-title #[nil "└öbê┴vê┬├wê`├ê`{ç" [4 1 "     " nil] 2 "\
  79. Return the title of the section as a string.
  80. The title is used as a description line in the menu when one does not
  81. already exist.
  82.  
  83. Move point to the beginning of the appropriate section line by going
  84. to the start of the text matched by last regexp searched for, which
  85. must have been done by `texinfo-menu-locate-entry-p'."])
  86. (fset 'texinfo-old-menu-p #[(beginning first) "bê┴┬ ─#¼ê┼cê╞yê╟ç╚ç" [beginning re-search-forward "^@menu" first goto-end "\n\n" -2 nil t] 4 "\
  87. Move point to the beginning of the menu for this section, if any.
  88. Otherwise move point to the end of the first node of this section.
  89. Return t if a menu is found, nil otherwise.
  90.  
  91. First argument is the position of the beginning of the section in which
  92. the menu will be located; second argument is the position of the first
  93. node within the section.
  94.  
  95. If no menu is found, the function inserts two newlines just before the
  96. end of the section, and leaves point there where a menu ought to be."])
  97. (fset 'texinfo-incorporate-descriptions #[(new-menu-list) "┴ ½Üè─┼@@P\n╞#½ç@╟\n!íê)Aë¼f ë*ç" [new-menu-list texinfo-menu-end end-of-menu new-menu-list-pointer search-forward "* " t texinfo-menu-copy-old-description] 5 "\
  98. Copy the old menu line descriptions that exist to the new menu.
  99.  
  100. Point must be at beginning of old menu.
  101.  
  102. If the node-name of the new menu entry cannot be found in the old
  103. menu, use the new section title for the description, but if the
  104. node-name of the new menu is found in the old menu, replace the
  105. section title with the old description, whatever it may be.
  106.  
  107. For this function, the new menu is a list made up of lists of dotted
  108. pairs in which the first element of the pair is the node name and the
  109. second element the description. The new menu is changed destructively.
  110. The old menu is the menu as it appears in the texinfo file."])
  111. (fset 'texinfo-menu-copy-old-description #[(end-of-menu) "└┴wê┬├!½ÿ┬─!¼ô`è┼─╟#ê╚yê┴ê`){ç╔ç" ["[:.,    \n ]+" nil looking-at "\\(\\w+\\|@\\)" "\\(^\\* \\|^@end menu\\)" re-search-forward end-of-menu t -1 ""] 5 "\
  112. Return description field of old menu line as string.
  113. Point must be located just after the node name.  Point left before description.
  114. Single argument, END-OF-MENU, is position limiting search."])
  115. (fset 'texinfo-menu-end #[nil "è└┴┬├#½â`¬â─┼!)ç" [re-search-forward "^@end menu" nil t error "Menu does not have an end."] 4 "\
  116. Return position of end o